home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / var / lib / dpkg / info / cups-driver-gutenprint.postinst < prev    next >
Text File  |  2009-09-18  |  3KB  |  77 lines

  1. #! /bin/sh
  2. # postinst script for cups-driver-gutenprint
  3. #
  4. # see: dh_installdeb(1)
  5.  
  6. set -e
  7.  
  8. # summary of how this script can be called:
  9. #        * <postinst> `configure' <most-recently-configured-version>
  10. #        * <old-postinst> `abort-upgrade' <new version>
  11. #        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
  12. #          <new-version>
  13. #        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
  14. #          <failed-install-package> <version> `removing'
  15. #          <conflicting-package> <version>
  16. # for details, see /usr/doc/packaging-manual/
  17. #
  18. # quoting from the policy:
  19. #     Any necessary prompting should almost always be confined to the
  20. #     post-installation script, and should be protected with a conditional
  21. #     so that unnecessary prompting doesn't happen if a package's
  22. #     installation fails and the `postinst' is called with `abort-upgrade',
  23. #     `abort-remove' or `abort-deconfigure'.
  24.  
  25. #s/^if\s+\[\s+"\$1"\s+=\s+"configure"\s+\];\s+then\s+ldconfig\b//m;
  26.  
  27. if [ "$1" = "configure" ]; then
  28.  
  29.   # Upgrade in-use PPD files, continue on any failure
  30.   cups-genppdupdate || true
  31.   # Restart CUPS (to register new and updated PPDs)
  32.   [ -x /etc/init.d/cups ] && invoke-rc.d cups force-reload || true
  33.  
  34.   # Upgrade from obsolete epson and canon backends
  35.  
  36.   # Note that the current CUPS usb backend, unlike the epson and canon
  37.   # backends, does not allow direct use of device names, so these devices will
  38.   # require manual modification of the device URI; we can't get the correct
  39.   # IEEE-1284 device ID for a given device node without digging into the CUPS
  40.   # internals.
  41.   LC_ALL=C lpstat -h /var/run/cups/cups.sock -v |
  42.   while read devinfo; do
  43.       printer=$(echo $devinfo | sed -e 's;device for \(..*\): \(..*\):/\(.*\);\1;')
  44.       backend=$(echo $devinfo | sed -e 's;device for \(..*\): \(..*\):/\(.*\);\2;')
  45.       device=$(echo $devinfo | sed -e 's;device for \(..*\): \(..*\):/\(.*\);/\3;')
  46.  
  47.       if [ "$backend" = "epson" ] || [ "$backend" = "canon" ]; then
  48.       echo "Backend $backend used by printer $printer is obsolete."
  49.       newbackend='parallel'
  50.       if ! echo "$device" | grep -q '^/dev'; then
  51.           newbackend='socket'
  52.       elif echo "$device" | grep -q 'usb'; then
  53.           newbackend='usb'
  54.       fi
  55.       echo "Updating $printer to use $newbackend backend: $newbackend:$device"
  56.       lpadmin -h /var/run/cups/cups.sock -p "$printer" -v "$newbackend:$device"
  57.       lpstat -h /var/run/cups/cups.sock -v "$printer"
  58.       else
  59.       echo "Backend $backend used by printer $printer is current."
  60.       fi
  61.   done
  62.  
  63. elif [ "$1" = "abort-upgrade" ] || [ "$1" = "abort-remove" ] || [ "$1" = "abort-deconfigure" ]; then
  64.   :
  65. else
  66.   echo "postinst called with unknown argument \`$1'" >&2
  67.   exit 0
  68. fi
  69.  
  70. # dh_installdeb will replace this with shell code automatically
  71. # generated by other debhelper scripts.
  72.  
  73.  
  74.  
  75. exit 0
  76.  
  77.